Simulation is a process whereby the functionality of a system is modeled in software, which is run on a simulator host computer. Typically, the model is based on design data provided to the simulator designer by the system manufacturer. For a full fidelity trainer, the model must implement all functionality of the system and run in real time. All signal and data interfaces of the device must also be simulated. Use of the simulation approach provides significant benefits. The model can include simulator specific functions that are not present in the actual (modeled) system. For example, a “freeze” mode of operation that pauses or maintains a frame of the simulator operation can be readily accommodated during a simulation, whereas such a “freeze” mode is impossible to attain in normal operation of the actual system. Additionally, when using the simulation approach, actual systems, which are often costly and require special interfacing hardware, are not needed. Further, portions of the actual system that normally operate undetected by the personnel being trained, such as diagnostic testing and the like, can be simplified or not modeled when using a simulator.
Another advantage of simulation is the ability to review a completed training exercise by playback of recorded data. During this review, synchronized playback and control of data files is desirable in order to properly relate events that occurred during the training exercise. An example of a training exercise may be a simulation of a coordinated attack of ground support aircraft protected by a fighter cover and guided by an airborne warning and command system (AWACS) aircraft. Such a simulation may occur over geographically dispersed areas. For example, simulators at an Air Force base in Missouri might be used for the attack and fighter aircraft, while simulators at an Air Force base in New York are used for the AWACS aircraft. The simulators at both locations may record simulation data, which are then played back after the simulation so that the simulation participants can review the consequences of their actions. However, because the simulation sites are dispersed in this example, play back of the data files may present a synchronization problem. In addition to the dispersed nature of simulation sites, the data present at the simulation sites, and even the data representation protocols may be different at the different simulation sites. This precludes the possibility of replay of a single file over the network and necessitates the logging and replay of dissimilar data files.